package br.com.caelum.vraptor.controller;

import java.util.List;

import javax.inject.Inject;

import br.com.caelum.vraptor.Controller;
import br.com.caelum.vraptor.Result;
import br.com.caelum.vraptor.components.UsuarioWeb;
import br.com.caelum.vraptor.dao.UsuarioDAO;
import br.com.caelum.vraptor.dao.GenericDAO;
import br.com.caelum.vraptor.entidades.Usuario;
import br.com.caelum.vraptor.controller.IndexController;


@Controller
public class UsuarioController {
	
	@Inject
	private Result result;
	
	@Inject
	private GenericDAO<Usuario> dao;
	@Inject
	private UsuarioWeb usuarioWeb;
	@Inject
	private UsuarioDAO usuarioDAO;
	@Inject
	
	public void add(){
		
	}
	public void delete(int id){
        Usuario usuario = new Usuario();
        usuario.setId(id);
        dao.delete(usuario);
        result.redirectTo(this).list();
}
	 public Usuario edit(Integer id){
         return dao.find(id);
 }
	public List<Usuario> list(){
		return dao.find();
	}
	
	public void save(Usuario usuario){
		dao.save(usuario);
		result.redirectTo(this).list();
	}
    public void login(){
		
	}
    public void logar(String nome, String senha){
        Usuario usuario = usuarioDAO.find(nome, senha);
        usuarioWeb.login(usuario);
        if(usuarioWeb.isLogado()){
                result.redirectTo(IndexController.class).index();
        }
        else{
                result.redirectTo(this).login();}
}
	
	
	
}
